package com.ztesoft.web.filecommon.db.dao.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

import com.ztesoft.framework.exception.BaseAppException;
import com.ztesoft.web.filecommon.db.arg.DmSrcFileArg;
import com.ztesoft.web.filecommon.db.po.DmSrcFilePO;

public interface IDmSrcFileMapper {
    
    List<Integer> countByArg(DmSrcFileArg arg);

    List<DmSrcFilePO> selectByArg(DmSrcFileArg arg);

    DmSrcFilePO selectByPrimaryKey(Integer id);

    List<DmSrcFilePO> selectByArgAndPage(DmSrcFileArg arg, RowBounds rowBound);

    int insert(DmSrcFilePO record);

    int insertSelective(DmSrcFilePO record);

    int insertBatch(@Param("list") List<DmSrcFilePO> records);

    int updateByArgSelective(@Param("record") DmSrcFilePO record,
            @Param("arg") DmSrcFileArg arg);

    int updateByArg(@Param("record") DmSrcFilePO record,
            @Param("arg") DmSrcFileArg arg);

    int updateByPrimaryKeySelective(DmSrcFilePO record);

    int updateByPrimaryKey(DmSrcFilePO record);
    
    int deleteByArg(DmSrcFileArg arg);
    
    int deleteByPrimaryKey(Integer id);
    
    /**
	 * 根据策略标识获取对象信息
	 * 
	 * @param dmStrategyId
	 * @return
	 * @throws BaseAppException
	 */
	DmSrcFilePO selectBydmStrategyId(Integer dmStrategyId) ;
    
}